package com.cykj.mapper;

import com.cykj.pojo.PsConsultant;
import com.cykj.pojo.PsConsultingRecord;
import com.cykj.vo.AdminVO;
import com.cykj.vo.BookingVo;
import com.cykj.vo.QueryAdminRoleOrConsultantVo;
import com.cykj.vo.SelectMoneyVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @BelongsProject: Psychology
 * @BelongsPackage: com.cykj.mapper
 * @Author: 小林
 * @CreateTime: 2025-01-20 09:44
 * @Description: 咨询师mapper层
 * @Version: 1.0
 */
public interface ConsultantMapper {
    //后台管理员（选中咨询师）
    int addConsultantMapper(@Param("vo")QueryAdminRoleOrConsultantVo vo);

    //查询咨询师资金账户
    List<PsConsultant> selectConsultantMoney(@Param("vo") SelectMoneyVo vo);

    //后台预约列表显示（预约记录表、用户表、领域表、管理员表、咨询师表）
    List<PsConsultant> getConsultantAndUserAndType(@Param("vo")BookingVo vo);
    //修改答复
    int updateAppointmentReply(@Param("vo")BookingVo vo);
    //修改状态四种
    int updateAppointmentStatus2(@Param("vo")BookingVo vo);
    int updateAppointmentStatus3(@Param("vo")BookingVo vo);
    int updateAppointmentStatus4(@Param("vo")BookingVo vo);
    int updateAppointmentStatus5(@Param("vo")BookingVo vo);

    //查询咨询师每个人对应的预约量
    List<PsConsultant> getConsultantsWithAppointmentsByTimeRange(@Param("vo")BookingVo vo);

    int updateAppointmentStatus6(@Param("vo")BookingVo vo);

    //查询咨询师余额
    PsConsultant getMoney(@Param("adminId") Integer adminId);
}

